package com.danjinwulian.common.core.domain.entity;

import com.danjinwulian.common.annotation.Excel;
import com.danjinwulian.common.annotation.Excel.Type;
import com.danjinwulian.common.core.domain.BaseEntity;
import java.util.Date;

/**
 * 设备对象 iot_device
 * 
 * @author ken.h
 */
public class IotDevice extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 设备ID */
    private Long deviceId;

    /** 产品ID */
    private String productId;

    /** 产品名称 */
    @Excel(name = "产品名称")
    private String productName;

    /** 公寓ID */
    private Long hotelId;

    /** 公寓名称 */
    @Excel(name = "公寓名称")
    private String hotelName;

    /** 店长账号 */
    @Excel(name = "店长账号")
    private String hotelPhone;

    /** 设备名称 */
    @Excel(name = "设备名称")
    private String deviceName;

    /** 设备秘钥 */
    private String deviceSecret;

    /** 设备类型 */
    private String deviceType;

    /** 启用/禁用状态 */
    private Long enableState;

    /** 首次上线时间（激活时间） */
    private Date firstOnlineTime;

    /** 房间名称 */
    @Excel(name = "房间名称")
    private String roomName;

    @Excel(name = "房间地址")
    private String roomAddress;

    @Excel(name = "房间户型")
    private String roomLayout;

    @Excel(name = "控电功率")
    private String roomPowerCapacity;

    @Excel(name = "用电单价")
    private String roomPowerPrice;

    private String ctBeginTime;
    private String ctEndTime;
    private String ddTime;

    /** 人走断电（0=已关闭,1=已开启） */
    private String leavePoweroff;

    /** 扫码开电（0已禁用 1已启用）） */
    private String scanPoweron;

    /** WiFi名称 */
    @Excel(name = "WiFi名称")
    private String wifiName;

    /** WiFi密码 */
    @Excel(name = "WiFi密码")
    private String wifiPswd;

    /** 最后上线时间 */
    @Excel(name = "最后上线时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss", type = Type.EXPORT)
    private Date lastOnlineTime;
    @Excel(name = "最后下线时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss", type = Type.EXPORT)
    private Date lastOfflineTime;

    /** 电路开关（10扫码开电 11远程通电 12自动通电 01远程断电 02强制断电 03人走断电） */
    private String circuitSwitch;
    @Excel(name = "最后通电时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss", type = Type.EXPORT)
    private Date lastPoweronTime;

    /** 状态（0未激活 1已上线 2已下线 3网络异常） */
    @Excel(name = "状态", readConverterExp = "0=未激活,1=已上线,2=已下线,3=已禁用")
    private Long status;

    /** 删除标志（0代表存在 2代表删除） */
    private String delFlag;

    /** 设备数量 */
    private int deviceCount;

    /** 微信unionid */
    private String unionid;

    /** 省电时长 */
    private String savePowerDuration;

    /** 采购类型 */
    private String purchaseType;

    /** 采购到期时间 */
    private String purchaseDeadline;

    private String deviceMac;

    private String deviceIp;

    private String[] macs;

    private String systemInfo;

    public IotDevice()
    {

    }

    public IotDevice(Long deviceId)
    {
        this.deviceId = deviceId;
    }

    public Long getDeviceId() {
        return deviceId;
    }

    public void setDeviceId(Long deviceId) {
        this.deviceId = deviceId;
    }

    public String getProductId() {
        return productId;
    }

    public void setProductId(String productId) {
        this.productId = productId;
    }

    public String getProductName() {
        return productName;
    }

    public void setProductName(String productName) {
        this.productName = productName;
    }

    public Long getHotelId() {
        return hotelId;
    }

    public void setHotelId(Long hotelId) {
        this.hotelId = hotelId;
    }

    public String getRoomAddress() {
        return roomAddress;
    }

    public void setRoomAddress(String roomAddress) {
        this.roomAddress = roomAddress;
    }

    public String getRoomLayout() {
        return roomLayout;
    }

    public void setRoomLayout(String roomLayout) {
        this.roomLayout = roomLayout;
    }

    public String getRoomPowerCapacity() {
        return roomPowerCapacity;
    }

    public void setRoomPowerCapacity(String roomPowerCapacity) {
        this.roomPowerCapacity = roomPowerCapacity;
    }

    public String getRoomPowerPrice() {
        return roomPowerPrice;
    }

    public void setRoomPowerPrice(String roomPowerPrice) {
        this.roomPowerPrice = roomPowerPrice;
    }

    public String getCtBeginTime() {
        return ctBeginTime;
    }

    public void setCtBeginTime(String ctBeginTime) {
        this.ctBeginTime = ctBeginTime;
    }

    public String getCtEndTime() {
        return ctEndTime;
    }

    public void setCtEndTime(String ctEndTime) {
        this.ctEndTime = ctEndTime;
    }

    public String getDdTime() {
        return ddTime;
    }

    public void setDdTime(String ddTime) {
        this.ddTime = ddTime;
    }

    public String getHotelName() {
        return hotelName;
    }

    public void setHotelName(String hotelName) {
        this.hotelName = hotelName;
    }

    public String getHotelPhone() {
        return hotelPhone;
    }

    public void setHotelPhone(String hotelPhone) {
        this.hotelPhone = hotelPhone;
    }

    public String getDeviceName() {
        return deviceName;
    }

    public void setDeviceName(String deviceName) {
        this.deviceName = deviceName;
    }

    public String getDeviceSecret() {
        return deviceSecret;
    }

    public void setDeviceSecret(String deviceSecret) {
        this.deviceSecret = deviceSecret;
    }

    public String getDeviceType() {
        return deviceType;
    }

    public void setDeviceType(String deviceType) {
        this.deviceType = deviceType;
    }

    public Long getEnableState() {
        return enableState;
    }

    public void setEnableState(Long enableState) {
        this.enableState = enableState;
    }

    public Date getFirstOnlineTime() {
        return firstOnlineTime;
    }

    public void setFirstOnlineTime(Date firstOnlineTime) {
        this.firstOnlineTime = firstOnlineTime;
    }

    public String getRoomName() {
        return roomName;
    }

    public void setRoomName(String roomName) {
        this.roomName = roomName;
    }

    public String getLeavePoweroff() {
        return leavePoweroff;
    }

    public void setLeavePoweroff(String leavePoweroff) {
        this.leavePoweroff = leavePoweroff;
    }

    public String getScanPoweron() {
        return scanPoweron;
    }

    public void setScanPoweron(String scanPoweron) {
        this.scanPoweron = scanPoweron;
    }

    public String getWifiName() {
        return wifiName;
    }

    public void setWifiName(String wifiName) {
        this.wifiName = wifiName;
    }

    public String getWifiPswd() {
        return wifiPswd;
    }

    public void setWifiPswd(String wifiPswd) {
        this.wifiPswd = wifiPswd;
    }

    public Date getLastOnlineTime() {
        return lastOnlineTime;
    }

    public void setLastOnlineTime(Date lastOnlineTime) {
        this.lastOnlineTime = lastOnlineTime;
    }

    public Date getLastOfflineTime() {
        return lastOfflineTime;
    }

    public void setLastOfflineTime(Date lastOfflineTime) {
        this.lastOfflineTime = lastOfflineTime;
    }

    public String getCircuitSwitch() {
        return circuitSwitch;
    }

    public void setCircuitSwitch(String circuitSwitch) {
        this.circuitSwitch = circuitSwitch;
    }

    public Date getLastPoweronTime() {
        return lastPoweronTime;
    }

    public void setLastPoweronTime(Date lastPoweronTime) {
        this.lastPoweronTime = lastPoweronTime;
    }

    public Long getStatus() {
        return status;
    }

    public void setStatus(Long status) {
        this.status = status;
    }

    public String getDelFlag() {
        return delFlag;
    }

    public void setDelFlag(String delFlag) {
        this.delFlag = delFlag;
    }

    public int getDeviceCount() {
        return deviceCount;
    }

    public void setDeviceCount(int deviceCount) {
        this.deviceCount = deviceCount;
    }

    public String getUnionid() {
        return unionid;
    }

    public void setUnionid(String unionid) {
        this.unionid = unionid;
    }

    public String getSavePowerDuration() {
        return savePowerDuration;
    }

    public void setSavePowerDuration(String savePowerDuration) {
        this.savePowerDuration = savePowerDuration;
    }

    public String getPurchaseType() {
        return purchaseType;
    }

    public void setPurchaseType(String purchaseType) {
        this.purchaseType = purchaseType;
    }

    public String getPurchaseDeadline() {
        return purchaseDeadline;
    }

    public void setPurchaseDeadline(String purchaseDeadline) {
        this.purchaseDeadline = purchaseDeadline;
    }

    public String getDeviceMac() {
        return deviceMac;
    }

    public void setDeviceMac(String deviceMac) {
        this.deviceMac = deviceMac;
    }

    public String getDeviceIp() {
        return deviceIp;
    }

    public void setDeviceIp(String deviceIp) {
        this.deviceIp = deviceIp;
    }

    public String[] getMacs() {
        return macs;
    }

    public void setMacs(String[] macs) {
        this.macs = macs;
    }

    public String getSystemInfo() {
        return systemInfo;
    }

    public void setSystemInfo(String systemInfo) {
        this.systemInfo = systemInfo;
    }
}
